home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
doors_1
/
doors13.zip
/
MANUAL.DEU
< prev
next >
Wrap
Text File
|
1991-04-10
|
53KB
|
1,657 lines
DOORSWAP
1.30
März/April 1991
von
Volker König
Mettmanner Straße 71
4000 Düsseldorf 1
FIDO: 2:241/4031.3
DOORSWAP.DOC Version 1.30
10.04.1991
INHALT
------
1. Noch'n Utility 3
1.1 Das Shareware-Konzept. 4
1.2 Lizenzabkommen 5
1.3 Gewährleistung 7
2 Systemvoraussetzungen 8
2.1 Hardwarevoraussetzungen 8
2.2 Softwarevoraussetzungen 9
3 Installation 11
3.1 Das Swapfile 13
3.2 Ramdisk 13
3.3 Verschachteltes Swapping 14
4 Optionen 15
5 Zukunftsvisonen 17
6 Fehlermeldungen 18
7 Index 20
8 Geschichtliches 22
Seite 2
DOORSWAP.DOC Version 1.30
10.04.1991
1. Noch'n Utility
--------------
Was soll DOORSWAP?
Viele Mailboxprogramme bieten die Möglichkeit, aus dem Programm
heraus Statistiksoftware, Datenbanken oder auch - nein, vielmehr:
in erster Linie - Onlinespiele zu starten. Aber: Diese Option
wurde bei vielen Programmen nur sehr halbherzig realisiert. Es
liegt die Vermutung nahe, daß in vielen Fällen die Option "DOOR"
bzw. "SPIEL" oder "EXTERN" nur aus optischen Gründen installiert
wurde.
Es setzt sich naemlich immer mehr durch, externe Programme - wie
etwa DSZ - anstelle eigener Problemlösungen einzusetzen, was
sicherlich Vorteile hat. Schließlich werden dadurch Übertragungs-
protokolle standardisiert und die Box kann ohne Programmänderung
- durch einfache Anmeldung neuer Tochterprozesse - mit bislang
noch unbekannten Transferprotokollen und Komprimierungsverfahren
arbeiten.
Um diese Hilfsprogramme einsetzen zu können, müssen die
Programmierer zwangsläufig eine Möglichkeit offenhalten, ähnlich
der SYSTEM-Funktion in C oder SHELL in BASIC, DOS-Tochterprozesse
zu starten. Offensichtlich ist nun in vielen Fällen die "DOOR"-
oder "SPIEL"-Funktion ein Abfallprodukt hiervon. Meist scheitern
aufwendigere Spiele am mangelnden Speicherplatz, der ihnen zur
Verfügung gestellt wird.
Eben dies Problem ergab sich mit Forem PC 2.3 und Tradewars ][.
Beide arbeiteten tadellos zusammen - bis auf die unbedeutenden
Abstürze bei jedem dritten oder vierten Lauf von TW.
"Das muß man doch irgendwie lösen können!"
Eben.
Nach reichlich schlaflosen Nächten und versauten Wochenenden,
dem Wälzen von Fachzeitungen und etlichen Besuchen in der
Düsseldorfer Zentralbücherei mit ihrer umfangreichen Sammlung an
Vorjahresausgaben von Zeitschriften (besonders der c't) entstand
dann schließlich das vorliegende Programm.
Seite 3
DOORSWAP.DOC Version 1.30
10.04.1991
1.1 Das Shareware-Konzept.
----------------------
Ich glaube, ich brauche nicht viel zu diesem Konzept zu sagen.
Anders, als bei Public-Domain ist bei Shareware nur das Kopieren
und Weitergeben gestattet. Die Nutzung ist nur solange erlaubt,
wie sie nicht zur Gewohnheit wird. Damit sie nicht zur Gewohnheit
wird verweigert DOOR.EXE an jedem Tag, dessen Zahl durch 5
teilbar ist, den Dienst. Also beispielsweise im Januar am 5.1.,
am 10.1., am 15.1., am 20.1. und so weiter. Die registrierte
Version hat diese Einschränkung natürlich nicht.
Bieten Sie das Programm in Ihrer Mailbox oder über Ihre
Shareware-Sammlung an - nur, wenn Sie mehr tun, als es auf einer
Versuchsbasis zu (be)nutzen, sind Sie mir einen kleinen Obulus
schuldig.
Ich erlaube hiermit widerruflich die Vervielfältigung und
Weitergabe des Programmpaketes DOORSWAP als sog. Shareware,
solange
- keine Datei hinzugefügt, entfernt oder verändert wird,
- das Paket nur als ganzes - ohne weitere urheberrechtliche
Vermerke - in Form der Datei DOORS13.EXE weitergegeben wird,
- das Programm nicht in Verbindung mit oder als Zusatz zu einem
andern Produkt abgegeben wird (dies schließt nicht die
Weitergabe in einer Sammlung von Hilfsprogrammen ein, für die
keine natürliche oder juristische Person das Urheberrecht
geltend macht) und
- die geforderte Vergütung für die Weitergabe von DOORSWAP oder
der Programmsammlung, die DOORSWAP beeinhaltet, DM 5,-- nicht
übersteigt.
Seite 4
DOORSWAP.DOC Version 1.30
10.04.1991
1.2 Lizenzabkommen
--------------
Nach den Bestimmungen des deutschen Urheberrechts ist jegliche
Nutzung eines urheberrechtlich geschützten Werkes ohne
ausdrückliche Erlaubnis des Urhebers verboten und kann zu Geld-
und Haftstrafen sowie zu Schadensersatzforderungen führen.
Gegen ein Entgelt von DM 20,--, per Euroscheck ("nur zur
Verrechnung"), in Bar (bitte!!! nicht in Briefmarken) oder per
Banküberweisung schicke ich Ihnen ein Exemplar von Doorswap 1.30
oder, sofern erhältlich, einer Nachfolgeversion mit Ihrer
persönlichen Registrier-Nummer und selbstverständlich ohne den
lästigen Vermerk mit der unregistrierten Version. Dies Angebot
gilt übrigens nur für Bestellungen aus Deutschland. Wegen der
höheren Portokosten schauen Sie bitte für Registrierungen aus dem
Ausland in das File MANUAL.ENG.
Die registrierte Version ist allerdings nicht mehr zum Kopieren
freigegeben. Sofern Sie mehrere Mailboxen betreiben - setzen Sie
sich mit mir in Verbindung. Über eine Sammellizenz lasse ich mit
mir reden; diese wird sicherlich günstiger als mehrere
Einzellizenzen sein.
Wenn Sie bereits im Besitz einer registrierten Version von
DOORSWAP sind, die eine Versionsnummer kleiner 1.30 hat, können
Sie gegen DM 12,50 ein Update bekommen.
Über Änderungen/Anpassungen auf Ihren Rechner oder Ihre Software
lasse ich gerne mit mir reden; ich bin ja auch an Weiterent-
wicklungen und Verbesserungen interessiert.
Bitte setzen Sie sich zur Registrierung mit mir unter folgender
Anschrift in Verbindung:
Volker König
Mettmanner Straße 71
4000 Düsseldorf 1
Bei Zahlung per Überweisung teile ich Ihnen meine Bankverbindung
auf Anfrage mit. Beachten Sie jedoch, daß ich die lizensierte
Version in diesem Fall erst dann abschicken werde, wenn die
Überweisung auf meinem Bankkonto angekommen ist. Gebrannte Kinder
scheuen das Feuer.
Seite 5
DOORSWAP.DOC Version 1.30
10.04.1991
Bitte beantworten Sie mir bei Gelegenheit der Registrierung
folgende Fragen:
In welcher Mailbox
wird DOORSWAP benutzt? ________________________________________
Telefonnummer _________________ Netz? ________________
Mailboxsoftware ________________________________________
Online-Spiel(e) ________________________________________
_________________________________________________________________
DOS-Version ________________________________________
zusätzliche Programme ________________________________________
Hardware
o PC/XT Speicherausbau __________ kByte
o PC/AT (80286) davon für DOS __________ kByte
o PC/AT (80384/80486) für RAM-Disk __________ kByte
o PS/2 Modell ______ __ Festplatte(n) mit insgesamt
_________ MByte Speicher
Selbstverständlich unterliegen diese Daten dem Datenschutz. Ich
werde sie niemandem weitergeben oder offenbaren, außer, wenn es
sich um Hilfen Problemlösungen handelt, für die das Wissen um
bestimmte Daten notwendig ist. Diese Daten sollen in erster Linie
dabei helfen, Probleme zu beseitigen und anhand der Ausrüstung
der Anwender mit Hard- und Software Verbesserungsmöglichkeiten
herauszufinden.
Seite 6
DOORSWAP.DOC Version 1.30
10.04.1991
1.3 Gewährleistung
--------------
Sie können sicherlich verstehen, daß ich mich bei einem Preis von
20,-- DM für jedes Programm und der immensen (hüstel...) Zahl von
Mailboxen, die es nutzen können, von irgendwelchen Schadenersatz-
forderungen freihalten möchte.
Sachmängel
Die sechsmonatige Gewährleistung für Sachmängel aus dem
Bürgerlichen Gestzbuch darf ich leider nicht umgehen, jedoch gehe
ich davon aus, daß Sie das Programm vor der Registrierung
eingehend getestet haben und wissen, wo die Fehler liegen und was
es kann. Außerdem garantiere ich die Funktion nur auf einem
Rechner, der identisch mit dem meinen ist:
AT 286, Hersteller: MANDAX (Taiwan), mit AMI-BIOS, Festplatte
Seagate ST225, Herkuleskarte, MS-DOS 3.2.
in Verbindung mit FOREM-PC und Tradewars ][
Sollten durch irgendwelche Programmfehler Datenverluste oder
Sachschäden auftreten, so sehe ich mich nur dann als dafür
verantwortlich an, wenn Ihr Rechner von der Konfiguration her mit
meinem übereinstimmt.
Seite 7
DOORSWAP.DOC Version 1.30
10.04.1991
2 Systemvoraussetzungen
---------------------
DOORSWAP sollte auf jedem Rechner arbeiten, der eine Festplatte
besitzt, den Interruptvektor 62h nicht für irgendwelche anderen
Spiele benutzt und mit DOS 3.0 oder später betrieben wird. Ich
musste leider auf den einen oder andern Bug von DOS 3.2 Rücksicht
nehmen, was allerdings bis DOS 4.01 keine Probleme bereitete. Wer
weiß, was spätere Versionen bringen!
Nicht funktioniert hat das Programm in Verbindung mit GALACTIC
WARZONE und FOREM PC 2.3 auf einem Commodore PC 10. Da WARZONE
jedoch auch ohne FOREM und DOORSWAP nicht funktionierte und immer
auf nicht vorhandene COM-Ports zugriff, ist anzunehmen, daß der
Fehler im Commodore-BIOS oder in der Einstellung der RS232 an
diesem spezifischen Rechner zurückzuführen ist.
Sehr instabil lief DOORSWAP übrigens bei einem Bekannten unter
DeskView, möglicherweise haben DOORSWAP und DeskView sich öfters
gegenseitig in's Abseits gestellt.
2.1 Hardwarevoraussetzungen
-----------------------
Es sollte eine Festplatte "C" existieren, die noch 700 kBytes an
Platz bietet.
Von Vorteil (aber keine Voraussetzung) ist eine zum UART 8250
kompatible RS-232-Schnittstelle, auch "serielles Port" oder "COM-
Port" genannt. Wie Sie beim ersten Aufruf bemerken werden,
ermittelt das Aktivatorprogramm DOOR.EXE die vermutlich von der
Mailbox belegte Schnittstelle und gibt eine Copyrightmeldung
darauf aus.
Der Aufruf von DOORSWAP ruft immer kleinere Verzögerungen hervor
und nicht in jedem System hat man die Möglichkeit, Textfiles mit
der Erklärung "Bitte warten, DOORSWAP arbeitet..." vor dem Aufruf
des Spiels über das COM-Port auszugeben. Ein kleiner Hinweis auf
das arbeitende Programm und etwas Eigenwerbung schaden sicher in
dieser Hinsicht niemandem.
Um die belegte Schnittstelle zu finden sucht DOORSWAP die dem DOS
bekannten Schnittstellen ab (bis zu vier Stück) und nimmt an, daß
die erste dieser Schnittstellen, an der das Signal "Carrier
Detect" gesetzt ist, mit einem Modem verbunden ist. Wird keine
aktive Schnittstelle gefunden, so wird auch keine Meldung
ausgegeben. Mit den im weiteren Verlauf dieser Dokumentation
erwähnten Optionen werden Sie jedoch auch bei bestehender
Verbindung die Ausgabe unterdrücken können.
Die Meldungen werden übrigens nun unter Umgehung des
Betriebssystems direkt dahin ausgegeben, wo DOOR.EXE einen UART
8250 vermutet. Diese Angaben sollte ausreichen, um gewieften
DEBUGgern ein Abstellen der Meldungen zu ermöglichen. Jedoch
können Sie auch hier mit einer Option die Ausgabe durch einen
eventuell vorhandenen FOSSIL-Treiber vornehmen.
Speicherplatz ist nicht viel notwendig, der soll ja gerade
Seite 8
DOORSWAP.DOC Version 1.30
10.04.1991
"vermehrt" werden. Lediglich zehn Kilobytes müssen mehr
zur Verfügung stehen, als das Mailboxprogramm zum Betrieb
benötigt. Ebenso muß ein Programm von etwas mehr als der Länge
von DOOR.EXE noch als Externa aufgerufen werden können.
2.2 Softwarevoraussetzungen
-----------------------
Im Bereich der Systemsoftware müssen Sie beachten, daß Sie MS-DOS
3.00 oder später benutzen. MS-DOS 3.2 wird empfohlen, sofern Sie
mit anderen Versionen Probleme bekommen sollten.
Jedoch habe ich das Programm bereits auf verschiedenen Rechnern
und unter MS-DOS 3.00 bis 4.01 getestet. Da wohl die benutzen
Routinen bis hin zu DOS 4.01 nicht geändert wurden, sollte es bis
auf Weiteres keine Kompatibilitätsschwierigkeiten geben.
RAM-Disks und Cache-Speicher dürfen nur im Extended oder Expanded
Memory liegen.
Sie dürfen grundsätzlich alle Gerätetreiber (etwa ANSI.SYS)
weiterhin installieren. Allerdings ist es äußerst ungünstig, wenn
irgendwelche Teile dieser Software ebenso wie DOORSWAP am DOS-
internen Speicheraufbau manipulieren oder gar im laufenden
Betrieb Interruptvektoren verändern. Außerdem müssen Sie darauf
achten, daß DOORSWAP als definitiv letztes Programm installiert
wird. Alle nach DOORSWAP installierten TSR-Programme stehen den
externen Programmen nicht mehr zur Verfügung.
Probleme können allerdings mit der Testversion von DOORSWAP
ermittelt werden: Funktioniert sie fehlerfrei, so liegt zumindest
keine funktionsstörende Beeinträchtigung vor.
Tastaturtreiber und ähnliche nützliche Dinge, ebenso wie
SIDEKICK-Clones, funktionieren unter DOORSWAP zumeist auch
fehlerfrei.
Die externen Spiele oder Hilfsprogramme, die über DOORSWAP
aufgerufen werden, dürfen ebenso wie das Mailboxprogramm
keinerlei unkoscheren Dinge mit dem DOS treiben. Sie sollten
keine Programme resident installieren, denn diese werden nach dem
Programmende zwangsläufig und ohne Rückfrage durch Überschreiben
mit den alten Speicherinhalten gelöscht.
Es sind vereinzelt Probleme denkbar (wenn auch noch nicht
aufgetreten), wenn das Mailboxprogramm mit FOSSIL-Treibern (X00,
BNU oder ähnliche) arbeitet. Normalerweise werden sämtliche
Interruptadressen in einem bestimmten Bereich von DOS selbst
verwaltet. FOSSIL-Treiber haben aber für den Ticker-Interrupt und
den INT 14H eigene Verwaltungsroutinen. Dazu später mehr.
Jedoch können die FOSSIL-Treiber auch benutzt werden, um die
Meldungen über die Schnittstelle auszugeben.
Wenn Sie eine RAM-Disk installieren, die außerhalb des DOS-
Speichers liegt (im Extended oder Expanded Memory), so können Sie
diese natürlich weiterhin benutzen. Eine RAM-Disk im DOS-Speicher
Seite 9
DOORSWAP.DOC Version 1.30
10.04.1991
kann nicht benutzt werden. Gleiches gilt für Cache-Programme, die
DOS-Speicher nutzen.
Seite 10
DOORSWAP.DOC Version 1.30
10.04.1991
3 Installation
------------
Zur Installation ist nun im Generellen nicht mehr viel zu sagen.
DOORSWAP besteht - wie Sie sicherlich schon gemerkt haben - aus
zwei Programmen. DOORSWAP.COM ist der residente Teil. Wenn er
installiert wird, merkt er sich den Zustand aller Interruptvek-
toren und verbiegt einen davon auf eine Einsprungstelle inner-
halb des residenten Teils.
DOOR.EXE ist das Aktivatorprogramm. Als Parameter wird ihm die
bisherige Kommandozeile zum Aufruf des externen Programmes
mitgegeben. DOOR.EXE ermittelt das belegte COM-Port und den
Inhalt der Environment-Variablen COMSPEC, DSOPT und DSFILE.
Daraufhin wird DOORSWAP über den Interrupt aktiviert, wobei
verschiedene Daten übergeben werden.
Diese Daten sind
- Name und Pfad des Kommandointerpreters (normalerweise
C:\COMMAND.COM)
- Parameter des zum Aufruf des Interpreters
- Name und Pfad des mit DSFILE definierten Swapfiles (soweit
definiert)
Ich gehe davon aus, daß die meisten Mailboxprogramme in einer
endlos laufenden BATCH-Datei arbeiten, die immer wieder aus der
DOS heraus das Mailboxprogramm neu startet. Diese Datei wird in
der Regel ihrerseits von der Datei AUTOEXEC.BAT aufgerufen.
Daher schlage ich als normale Installation des residenten Teils
vor, daß Sie DOORSWAP.COM als letzten Befehl vor Aufruf der
Mailbox in AUTOEXEC.BAT aufnehmen. Die korrekte Installation wird
durch eine kurze Meldung bestätigt. Es gehen durch DOORSWAP.COM 6
kByte Speicher verloren. DOORSWAP muß in diesem Fall als letztes
Programm vor dem Aufruf des eigentlichen Mailbox-Batchprogrammes
aufgerufen werden.
Wenn das Mailboxprogramm innerhalb einer Schleife im File
AUTOEXEC.BAT arbeitet, so muß DOORSWAP als letztes Programm vor
dem Einstieg in die Schleife aufgerufen werden.
VORSICHT: Mehrfachinstallationen sind in Version 1.30 noch
möglich; bei jeder Installation gehen 6 kBytes verloren !
Innerhalb des Mailboxprogrammes ist es sehr unterschiedlich, wie
das aufrufende und aktvierende Programm DOOR.EXE am günstigsten
einzubinden ist.
In den meisten Fällen werden externe Programme durch eine Shell-
Funktion gestartet. Sie müssen dem Mailboxprogramm im
Installationsfile oder an anderer Stelle lediglich mitteilen, wie
Sie das externe Programm vom DOS aus aufrufen würden. Nehmen wir
einmal an, das externe Programm hieße SPIEL.EXE und verlangt als
Parameter die Bezeichnung des COM-Ports bzw. das Wort LOCAL. Die
weiteren Daten (Usernamen, Level etc) holt es sich aus einem
File, das das Mailboxprogramm anlegt.
Seite 11
DOORSWAP.DOC Version 1.30
10.04.1991
Von DOS aus würde dieses Spiel so aufgerufen:
SPIEL COM1
Exakt diese Kommandozeile müßten Sie dem Mailboxprogramm
mitteilen, damit es das Spiel aufrufen kann. Wenn das Spiel nun
über DOORSWAP aufgerufen werden soll, dann muß anstelle des
Spieles DOOR.EXE aufgerufen werden. Damit DOOR.EXE weiß, was als
externes Programm aufgerufen werden soll, müssen Sie die
bisherige Kommandozeile an DOOR als Parameter übergeben. Der
Aufruf sähe demnach wie folgt aus:
DOOR SPIEL COM1
/^^^^^^^^^^
(bisherige Kommandozeile)
Diese einfache Änderung des Aufrufs ist beispielsweise bei FOREM
PC möglich, ebenso bei SearchlightBBS und anderen Programmen.
Nicht verändern müssen Sie die weiteren Installationsdaten:
Level, Pfade, Laufwerke und - last but not least - den Namen des
Programms im Menü der Mailbox.
In manchen Fällen wird jedoch das erste Wort der Kommandozeile
von der Mailbox als Befehl zum Aufruf des Spiels oder als
Anzeige im Menü angenommen. Im eben beschriebenen Fall würde das
Spiel an sich vom User der Mailbox mit dem Befehl SPIEL
aufgerufen, weil SPIEL auch das erste Wort der Kommandozeile ist.
Wenn Sie der Kommandozeile DOOR voransetzen, so müßten Sie
folgerichtig das Spiel mit dem Befehl DOOR starten. Wenn sie ein
solches System betreiben, so können Sie entweder nur ein Spiel
installieren (das dann über den Befehl DOOR aufgerufen wird) oder
sie müssen für jedes Spiel eine BATCH-Datei anlegen, die als
Namen den gewünschten Namen des Spiels als Mailboxkommando trägt.
Diese Batch-Datei beeinhaltet im genannten Fall wenigstens die
folgende Zeile:
DOOR SPIEL COM1
Es ist jedoch auch denkbar, in dieser Datei zunächst ein anderes
Directory anzuwählen, mit CLS den Bildschirm zu löschen oder ein
Textfile auf dem COM-Port auszugeben.
ACHTUNG:
--------
Nach der Installation von DOORSWAP muß WENIGSTENS ein Programm
nachgeladen worden sein, damit das Auslagern planmäßig
funktioniert. Wenn Sie DOORSWAP installiert haben und aus
derselben Kommando-Shell DOOR aufrufen, so ist dies zum Einen
Quatsch (weil nur der beim Aufruf von DOOR belegte Speicher
freigegeben wird, der bei normalem Aufruf sowieso noch frei wäre)
und wird zum andern unweigerlich zum Absturz führen.
Seite 12
DOORSWAP.DOC Version 1.30
10.04.1991
3.1 Das Swapfile
Ab Version 1.20 gibt es die Möglichkeit, den Namen des Swapfiles
zu variieren. Der Name des Swapfiles soll ein voll qualifizierter
Name sein; d.h. er soll aus Laufwerksbezeichnung, Pfad, Namen und
Extension bestehen.
Festgelegt wird der Name durch die Environmentvariable DSFILE.
Legen Sie den Namen in einer Batchdatei oder von DOS aus mit dem
Befehl
SET DSFILE=xxx
fest. Ist diese Variable nicht definiert, so wird C:\DOORSWAP.DAT
als Name angenommen.
Der Name sollte voll qualifiziert sein. Beinhaltet er keine
Laufwerksbezeichnung, so wird das aktuelle Laufwerk benutzt.
Beeinhaltet er keinen Pfad, so wird der aktuelle Pfad benutzt.
Ändert das über DOOR aufgerufene Programm nach dem Auslagern des
Speichers eine dieser Einstellungen und ist der Name nicht voll
qualifiziert gewesen, so wird DOORSWAP sein Swapfile nicht mehr
finden. Der Absturz ist dadurch vorprogrammiert.
Folgende Fehlerquellen finden sich im Filenamen:
DOORSWAP.DAT
Das File DOORSWAP.DAT im aktuellen Pfad des aktuellen Laufwerks
wird benutzt. Wenn nach Beendigung des Programmes ein anderer
Pfad bzw. ein anderes Laufwerk angewählt ist, führt dies zu einem
Absturz.
\BBS\DOORSWAP.DAT
Hier wird das angegebene File im aktuellen Laufwerk benutzt.
Sofern das aktuelle Laufwerk geändert wird, stürzt DOORSWAP beim
Nachladen ab.
TEMP\DOORSWAP.DAT
Hier wird das Verzeichnis TEMP benutzt, das vom aktuellen
Verzeichnis des aktuellen Laufwerks ausgeht. Wenn aktuelles
Laufwerk oder Verzeichnis geändert werden, so stürzt DOORSWAP
beim Rückladen ab.
3.2 Ramdisk
Sie können die gerade beschriebene Option dazu nutzen, DOORSWAP
auf eine RAM-Disk swappen zu lassen. Lediglich müssen Sie darauf
achten, daß diese RAM-Disk GARANTIERT noch 600 kBytes an
Speicherplatz frei hat. Das Swappen wird durch eine solche RAM-
Disk natürlich geradezu unverschämt schnell. Vergessen Sie bitte
auch nicht, daß diese RAM-Disk NICHT im DOS-Speicher liegen darf.
Seite 13
DOORSWAP.DOC Version 1.30
10.04.1991
3.3 Verschachteltes Swapping
Die Möglichkeit, den Namen des Swapfiles zu bestimmen, können Sie
auch für andere Spielereien benutzen.
Angenommen, das aufgerufene Programm kann selbst weitere Software
nachladen, stellt aber (wie auch die Mailbox) nicht genügend
Speicherplatz hierfür zur Verfügung. Denkbar ist eine solche
Installation beispielsweise, wenn sie das Mailboxprogramm zur
Installation in mehreren Netzen mehrfach als eigene DOOR-Funktion
aufrufen.
Sie können ab sofort aus der DOOR-Shell heraus DOORSWAP erneut
installieren. Sie MÜSSEN lediglich darauf achten, daß ein anderer
Swapfile-Name benutzt wird. In Kurzform eine
Beispielsinstallation:
Das Mailboxprogramm heißt BOX.EXE. Sie haben BOX.EXE in zwei
Installationen installiert, die in den Verzeichnissen INST_1 und
INST_2 liegen.
Die Batch-Datei, die das ERSTE Mailboxprogramm aufruft, sollte
folgende Zeilen beeinhalten:
[...]
CD \INST_1
SET DSFILE=C:\BOX\DOORSWAP.001
BOX
[...]
Die Batch-Datei des zweiten Programmes enthält dann folgende
Zeilen:
[...]
DOORSWAP
CD \INST_2
SET DSFILE=C:\BOX\DOORSWAP.002
BOX
[...]
Achten Sie insbesondere auf die Namen der Swapfiles und die
zweite Installation von DOORSWAP.COM.
Seite 14
DOORSWAP.DOC Version 1.30
10.04.1991
4 Optionen
--------
Ab Version 1.30 gibt es ein paar Optionen, die man mit der
Environment-Variablen DSOPT festlegen kann. Die einzelnen
Optionen werden direkt hintereinander, durch Semikolons getrennt,
angegeben. Ein Beispiel für eine Definition wäre dieses:
SET DSOPT=DEL;FOSINIT
Nun zu den Optionen im Einzelnen.
DEL - Löschen des Swapfiles.
Wenn Sie diese Option angeben, so wird nach dem Zurückladen des
Speichers das Swapfile gelöscht. Dies kann notwendig sein, wenn
Sie auch zu anderen Zwecken den vom Swapfile belegten
Speicherplatz benötigen (Export/Import von Nachrichten im
Netzwerkbetrieb etwa).
COMx - Angabe des COM-Ports für die Meldungen
Falls Sie Ihre Mailbox mit mehreren Ports benutzen oder keine
Standard-UART's installiert haben, kann es dazu kommen, daß die
Meldungen auf dem falschen Port ausgegeben werden oder zu
Abstürzen führen. Durch Angabe eines COM-Ports (durch Option COM1
Port 1, durch COM2 Port 2 usw.) ermittelt DOOR.EXE das benutzte
Port nicht selbständig. Wenn Sie COM0 angeben, wird die Ausgabe
auf dem COM-Port unterdrückt.
FOSOUT - Ausgabe der Meldungen über einen FOSSIL-Treiber
Oft werden (wie schon erwähnt) FOSSIL-Treiber benutzt, um das
COM-Port anzusprechen. Wenn auchin Ihrem Fall X00 oder BNU
installiert ist, empfiehlt es sich, auch DOOR.EXE über diese
Treiber die Ausgabe der Meldungen vornehmen zu lassen.
FOSINIT - Initialisieren des FOSSIL-Treibers nach dem Rückladen
Manche Spiele oder andere externe Programme nutzen ihrerseits den
FOSSIL-Treiber nicht, was an sich nichts Schlimmes ist. Manche
Programme verändern jedoch die Einstellungen des COM-Ports, ohne
sie nach Beendigung wieder in die Ausgangszustände zu versetzen.
Wenn der FOSSIL-Treiber, den die Mailbox benutzt, dies nicht
'weiß', so wird er möglicherweise mit einem komplett anderen
Verhalten des Port-Bausteines konfrontiert, als er es erwartet.
Im günstigsten Fall nimmt die Mailbox keine Eingabe mehr an und
bootet, nachdem der User aufgelegt hat, von selbst neu.
Durch Setzen von FOSINIT wird noch VOR der Ausgabe von DOOR's
Meldung der FOSSIL-Treiber auf das benutze COM-Port
initialisiert, was bedeutet, er wird aufgefordert, das COM-Port
so einzustellen, wie er es erwartet. In manchen Fällen kann dies
die Abstürze vermeiden.
Seite 15
DOORSWAP.DOC Version 1.30
10.04.1991
Und hier noch ein Beispiel für die Anwendung mehrerer Optionen:
Sie wollen, daß DOOR.EXE die Meldungen über seine Aktivität
ausgibt, die Mailbox läuft auf Port 2 in einem Multitasking-
system. Damit nicht, während Sie selbst unter einer zweiten Task
über COM1 in einer anderen Mailbox arbeiten, das falsche COM-Port
zur Ausgabe benutzt wird, wollen Sie das COM-Port selbst
definieren.
Wenn Sie morgens von Ihrem FIDO-Host pollen, wird es wegen
einiger durchlaufender Echos auf der Platte vorübergehend etwas
eng. Also soll das Swapfile automatisch gelöscht werden.
Zusätzlich wollen Sie den FOSSIL-Treiber (etwa X00)
initialisieren, weil das benutzte Spiel ab und zu einen Absturz
des Treibers hervorruft. Bei dieser Gelegenheit soll auch
gleichzeitig der FOSSIL-Treiber zur Ausgabe benutzt werden, um
alle Absturzmöglichkeiten auszuschließen.
Hierzu müssen Sie vor Aufruf von DOOR.EXE (etwa in der
AUTOEXEC.BAT) folgende Befehlszeile ausführen lassen:
SET DSOPT=COM2;DEL;FOSINIT;FOSOUT
Seite 16
DOORSWAP.DOC Version 1.30
10.04.1991
5 Zukunftsvisonen
---------------
Ja, auch DOORSWAP soll verbessert werden.
Wenn sich im Betrieb in andern als den bisher getesteten Systemen
Probleme zeigen sollten, so wird DOORSWAP selbstverständlich an
diese angepaßt werden. Allerdings müssen Sie, bei denen die
Probleme auftreten, sich mit mir in Verbindung setzen. Natürlich
auch dann, wenn Sie das Programm gerade testen und noch nicht
registriert haben.
Vorab sei aber erwähnt, was für Änderungen in den Folgeversionen
bereits konzipiert sind.
Es ist geplant, daß der von DOORSWAP benötigte Interrupt vom
Anwender gewählt werden kann. Möglicherweise wird das eine oder
andere Mailboxprogramm selbst über Interrupts Funktionen
aktivieren.
Irgendwann werde ich mir auch Gedanken machen, wie ich eine
Mehrfachinstallation von DOORSWAP.COM verhindern kann.
Seite 17
DOORSWAP.DOC Version 1.30
10.04.1991
6 Fehlermeldungen
---------------
Es gibt einige selbsterklärende Fehlermeldungen vom Runtime-
System des Modula-2-Compilers von Fittet Software Tools. DOOR.EXE
ist komplett in M2 geschrieben.
Ein paar Fehlermeldungen, die sich auf den Aufruf von DOOR.EXE
beziehen, sind auch implementiert:
'No Parameters passed by calling process'
DOOR.EXE wurde ohne Parameter aufgerufen. Daher weiß es nicht,
welches Programm gestartet werden soll und bricht ab.
'DOORSWAP.COM not installed or wrong version'
Sie müssen das DOORSWAP.COM installieren, das im Vertriebspaket
der benutzten Version von DOOR.EXE enthalten war. DOOR.EXE kann
nur mit dieser Version von DOORSWAP.COM arbeiten.
'Unknown option found in DSOPT'
In DSOPT wurde eine falsche Option angegeben. Da DOOR.EXE jetzt
nicht mehr sicher sein kann, daß Sie wissen, was Sie wollen,
bricht das Programm ab.
'Evaluation copy does not work today'
Sie benutzen die Test-Version von DOORSWAP. Diese funktioniert an
allen Tagen, deren Tageszahl durch 5 teilbar ist, nicht. Dieser
Zustand kann erst behoben werden, wenn Sie DOORSWAP registrieren.
Dann kann auch DOORSWAP.COM während der Interruptaktivitäten
Meldungen über Fehler ausgeben. Auch diese erklären sich selbst,
besagen aber nur, daß irgendein DOS-Austricksen nicht richtig
funktioniert hat. Es muß nicht, kann aber zu Abstürzen führen.
Viel können weder Sie noch ich daran ändern, da es vermutlich an
Ihrer DOS-Version liegt. Allerdings freue ich mich über jeden
Hinweis auf Fehler und stehe natürlich Rede und Antwort.
Die nächsten erwähnenswerten Fehlermeldungen sind die, die beim
Laden von COMMAND.COM auftreten können.
Hier hatte sich in den Vorversionen meine eigene Faulheit
durchgesetzt: Die DOS-Funktion zum Starten von Tochterprozessen
gibt die Fehler numerisch kodiert zurück. Ich hatte allerdings
keine Lust, auch noch eine Ausgaberoutine für Zahlenwerte in
Assembler zu schreiben, also addierte ich der Einfachheit halber
20h (chr$(32)) zu dem Fehlercode und wies DOORSWAP an, das
Ergebnis als ASCII auszugeben.
Seit Version 1.20 wird aber von DOOR.EXE nach Rückkehr vom
Seite 18
DOORSWAP.DOC Version 1.30
10.04.1991
mißglückten Aufruf der Fehlercode entschlüsselt und ausgegeben.
Alle diese Fehlermeldungen beziehen sich auf das in COMSPEC
angegebene File (meistens COMMAND.COM).
5.1 'returned from DOORSWAP without Error.'
Herzlichen Glückwunsch: Kein Fehler ist aufgetreten.
5.2 'FATAL ERROR: Illegal call of DOS-Function.'
Hier scheint ein Irrtum vorzuliegen: Die zum Start des
Tochterprozesses aufgerufene DOS-Funktion kommt mit der
Wertübergabe nicht zurecht. Überprüfen Sie, ob irgendwelche
Änderungen im File DOORSWAP.COM vorgenommen wurden und ob Sie
eine DOS-Version ab 3.00 benutzen. Sofern DOORSWAP.COM
unverändert ist und Ihre DOS-Version 3.0 oder später ist: Setzen
Sie sich bitte mit mir in Verbindung.
5.3 "COMSPEC 'C:\COMMAND.COM' not found!"
Überprüfen Sie die Einstellung der Variablen COMSPEC. Sie stimmt
nicht.
5.4 "Out of memory error: can't load 'C:\COMMAND.COM'!"
Nun, dies sollte gerade nicht passieren. Offenbar ist die
Speicherfreigabe fehlgeschlagen. Das liegt vermutlich an Ihrer
DOS-Version. Bitte informieren Sie mich!
5.3 "COMSPEC 'C:\COMMAND.COM' not found!"
Ihr Kommandointerpreter ist ein EXE-File, das leider einen
defekten Dateiaufbau hat. Ersetzen Sie es durch eine Kopie von
Ihrer DOS-Sicherheitskopie (so sie denn noch eine haben)
5.6 'Unknown Error.'
Die DOS-Funktion gibt einen Fehlercode zurück, den DOS bis
Version 4.01 noch nicht kannte.
Seite 19
DOORSWAP.DOC Version 1.30
10.04.1991
7 Index
Adresse 5
Aktivatorprogramm 11 FATAL ERROR: Illegal call
Änderungen 5 of DOS-Function. 19
Anpassungen 5 Fehlermeldungen 18
ANSI.SYS 9 Festplatte 8
AUTOEXEC.BAT 11 FIDO 16
Fittet Software Tools 18
BASIC 3 FOREM PC 12
BATCH-Datei 11 FOSINIT 15,16
BNU.SYS 9,15,16 FOSOUT 15
BOX in der BOX 14 FOSOUT 16
FOSSIL 9,15,16
C 3 FOSSIL, Initialisieren 15
Cache-Speicher 9
Carrier Detect 8 Gerätetreiber 9
COM 15,16 Geschichtliches 22
COM-Port 15,16 Gewährleistung 7
COM-Port, blockiertes 15 GLACTIC WARZONE 8
COM-Ports, mehrere 15
COMMAND.COM 11,18 Installation 11
Commodore PC 10 8 Interrupt 62h 8
COMSPEC 11 Interrupt, Wählen des 17
COMSPEC 'C:\COMMAND.COM' Interrupts 9
not found! 19 Interruptvektoren 11
Dateiname 13 Kommandozeile 12
Datenschutz 6 Komprimierung 3
DEL 15,16 Kopieren 4
DeskView 8 Kopierlizenz 4
DOOR.EXE 8,16,18
DOORSWAP.COM 11,18 Laufwerke 12
DOORSWAP.COM not Level 12
installed or wrong Lizenzabkommen 5
version 18 Lizenzgebühr 5
DOORSWAP.DAT 13
Doppelinstallaion 14 Mehrfachinstallation 11,17
DOS 3.0 9 Meldungen 15
DOS 3.20 9 Meldungen, Unterdrücken
DOS 4.01 9 der 15
DOS-Version 18 Modula 2 18
DSFILE 11,13 Multitasking 16
DSOPT 11,15,18
DSZ 3 Nachladen v. Programmen 12
Netzwerkbetrieb 15
Environment 13,15,18 No Parameters passed by
Evaluation copy does not calling process 18
work today 18
EXTERN 3 Online-Spiele 3
Optionen 15,18
Out of memory error:
can't load
'C:\COMMAND.COM'! 19
Seite 20
DOORSWAP.DOC Version 1.30
10.04.1991
Plattenspeicher 15,16
Preis 5
Public Domain 4
RAM-Disk 9,13
Registriernummer 5
Registrierung 5,18
residenter Teil 11
returned from DOORSWAP
without Error. 19
Sammellizenz 5
SearchlightBBS 12
Semikolon 15
Shareware 4,18
Shareware-Sammlung 4
SHELL 3,11
SIDEKICK 9
Speicherplatz 8
Standard-UART 15
Statistiksoftware 3
Swapfile 11,13,15
Swapfile, Löschen des 16
SYSTEM 3
Systemvoraussetzungen 8
Tastaturtreiber 9
TBOX 12
Testversion 18
Ticker-Interrupt 9
Tochterprozesse 3
UART 8250 8
Übertragungsprotokolle 3
Unknown option found in
DSOPT 18
Update 5
Verschachteltes Swapping 14
X00.SYS 9,15,16
Zahlung 5
Zukunftsvisionen 17
Seite 21
DOORSWAP.DOC Version 1.30
10.04.1991
8 Geschichtliches
---------------
Hier mal ein paar kleinere Sätzchen über die Entwicklung von
DOORSWAP.
8. 3. 1990 Freigabe von DOORSWAP 1.0. Zugleich Datum von
DOORS10.COM
11. 3. 1990 Beginn der Arbeiten an V1.1
Hierbei wurden insbesondere Unzulänglichkeiten
u.a. in TurboPascal 3.00 verändert. Turbo Pascal
in V3.00 beutzt standardmäßig den INT 10H zur
Ausgabe von Zeichen. Zu Beginn wird dann
versucht, die Grafikkarte in einen bestimmten
Zustand zu versetzen. Das gab bei manchen BIOS-
Versionen Probleme. Als Hauptänderung wurde in
V1.1 die Ausgabe auf STDOUT gelenkt. V1.1 wurde
nicht veröffentlicht, aber seit Mai 1990 als
registrierte Version benutzt.
22.11. 1990 Veröffentlichung von V1.20. Folgende Änderungen
wurden vorgenommen:
- DOOR.EXE, vorher DOOR.COM, ist nunmehr in
Modula-2 codiert. Da ich sämtliche Libraries
des Compilers im Source besitze, weiß ich
definitiv, daß es jetzt keine BIOS-Probleme
mehr geben kann.
- DOOR.EXE erkennt, ob DOORSWAP.COM in der
entsprechenden Version überhaupt installiert
ist.
- DOOR.EXE wertet die Environment-Variable
DSFILE aus und setzt deren Wert als Namen des
Swap-Files ein.
28.02.1991 Veröffentlichung von V1.21. Einige kleinere
optischen Verschönerungen und ein Bugfix wurden
vorgenommen. Bei V1.2 gab es gelegentlich
Probleme, weil ab und an das COM-Port nicht
richtig erkannt wurde. Es wurde daher bei
einzelnen Systemen die Copyright-Meldung über
*irgendein* COM-Port auszugeben (statt COM1).
Bei andern Systemen wurde die Adresse aus der
DOS-COM-Port-Liste vom nächsthöheren Port
genommen, auch, wenn diese auf 0H zeigte (weil
das Port nicht existierte). Da der DMA-
Controller dort sitzt und tatsächlich fast so
aussieht, wie ein COM-Port mit gesetztem
Carrier, wurde die Meldung über den DMA-
Controller ausgegeben. Beide Fehler führten zu
merkwürdigen Abstürzen (die ich hier nicht
nachvollziehen konnte - sorry, sonst hätte ich
den Bug schon vorher entdeckt).
Seite 22
DOORSWAP.DOC Version 1.30
10.04.1991
05.04.1991 Die Test an Version 1.30 sind abgeschlossen und
langsam rückt der Termin der Freigabe näher.
Folgende Änderungen wurden vorgenommen:
- Die Shareware-Version arbeitet an allen Tagen,
deren Tageszahl durch 5 teilbar ist, nicht.
- Dafür kann man die Meldungen unterdrücken oder
ein COM-Port zur Ausgabe vorschreiben.
- Der FOSSIL-Treiber kann zur Ausgabe benutzt
werden.
- Er kann auch vor Rückkehr zur Mailbox
initialisiert werden.
- DOOR.EXE kann auf Verlangen das Swapfile
selbständig löschen.
- Die Meldungen wurden etwas verkürzt und
verschönert. U.a. gibt DOOR.EXE über das COM-
Port zunächst ein paar RETURN's aus, weil manche
Mailboxprogramme den Curser nach der
Befehlseingabe hinter dem Befehl stehen lassen.
- Die Dokumentation enthält ein alphabetisches
Stichwortverzeichnis
Seite 23